Kill a Dragon

by: Andrew

This game was made for my level 2 project at The League of Amazing Programmers.
Click here to download and play!


1. Why I Made This Game

When I started making the game my friends and I were starting a Dungeons and Dragons campaign. I wanted to see if could try to make a game where you could decide what you would do.


2. What I Learned

The biggest thing I learned coding the games was that there are lots of little things that matter. I also learned how to better organize your code. In user testing I learned that my game was very confusing to someone who had never seen it. I was also told it looked kinda boring. So I added better instructions and images to make things look nicer.


3. Architecture of My Game

The game works by clicking buttons to trigger events. At the start of the game the user selects their character. When you click the map you will be able to travel to the place you select. This location determines which enemies you will fight. The enemies and player can fight which changes the values of variables like health. When the health variable reaches zero the Character dies and the game ends.


4. Technical Implementation

It is a dialog based game. The GameRunner sets up and starts the game. This starts the GamePanel which keeps track of what is clicked. The enemies and player are both subclasses of a GameObject. The GameObject has methods for managing health, and checking if the object is alive or dead. The part of the game that I am most proud of is the Enemy. The enemy takes damage and deals damage to the player. It required a lot of complex debugging to get it to run correctly.


5. Most Challenging Part

It was hard to remember what code did what. I made methods that did similar things instead of making one method. I made a lot of variables which got hard to keep track off, and I had a lot of classes. Mrs Jackie said that I should draw out what code caused what to happen. She also helped me put similar bits of code into one method.


6. Future Fixes and Updates

I would add a story to give it more meaning and characters. I would make more areas for you to visit. I think the code could be better organized, and not have be an entirely dialogue based game. A display of every single stat. A better name for my game.